////snippet-sourcedescription:[CreateBucket.java demonstrates how to create a new S3 bucket.]
////snippet-keyword:[Java]
////snippet-keyword:[Code Sample]
////snippet-keyword:[Amazon S3]
////snippet-keyword:[createBucket]
////snippet-service:[s3]
////snippet-sourcetype:[full-example]
////snippet-sourcedate:[2018-11-06]
////snippet-sourceauthor:[soo-aws]
///*
//   Copyright 2010-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
//
//   This file is licensed under the Apache License, Version 2.0 (the "License").
//   You may not use this file except in compliance with the License. A copy of
//   the License is located at
//
//    http://aws.amazon.com/apache2.0/
//
//   This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
//   CONDITIONS OF ANY KIND, either express or implied. See the License for the
//   specific language governing permissions and limitations under the License.
//*/
//package com.zkgengkun.support.util.s3;
//import com.amazonaws.services.s3.AmazonS3ClientBuilder;
//import com.amazonaws.services.s3.AmazonS3;
//import com.amazonaws.services.s3.model.AmazonS3Exception;
//import com.amazonaws.services.s3.model.Bucket;
//import java.util.List;
//
///**
// * Create an Amazon S3 bucket.
// *
// * This code expects that you have AWS credentials set up per:
// * http://docs.aws.amazon.com/java-sdk/latest/developer-guide/setup-credentials.html
// */
//public class CreateBucket
//{
//    public static Bucket getBucket(String bucket_name) {
//        final AmazonS3 s3 = AmazonS3ClientBuilder.defaultClient();
//        Bucket named_bucket = null;
//        List<Bucket> buckets = s3.listBuckets();
//        for (Bucket b : buckets) {
//            if (b.getName().equals(bucket_name)) {
//                named_bucket = b;
//            }
//        }
//        return named_bucket;
//    }
//
//    public static Bucket createBucket(String bucket_name) {
//        final AmazonS3 s3 = AmazonS3ClientBuilder.defaultClient();
//        Bucket b = null;
//        if (s3.doesBucketExist(bucket_name)) {
//            System.out.format("Bucket %s already exists.\n", bucket_name);
//            b = getBucket(bucket_name);
//        } else {
//            try {
//                b = s3.createBucket(bucket_name);
//            } catch (AmazonS3Exception e) {
//                System.err.println(e.getErrorMessage());
//            }
//        }
//        return b;
//    }
//
//    public static void main(String[] args)
//    {
//        final String USAGE = "\n" +
//            "CreateBucket - create an S3 bucket\n\n" +
//            "Usage: CreateBucket <bucketname>\n\n" +
//            "Where:\n" +
//            "  bucketname - the name of the bucket to create.\n\n" +
//            "The bucket name must be unique, or an error will result.\n";
//
//        if (args.length < 1) {
//            System.out.println(USAGE);
//            System.exit(1);
//        }
//
//        String bucket_name = args[0];
//
//        System.out.format("\nCreating S3 bucket: %s\n", bucket_name);
//        Bucket b = createBucket(bucket_name);
//        if (b == null) {
//            System.out.println("Error creating bucket!\n");
//        } else {
//            System.out.println("Done!\n");
//        }
//    }
//}
